/*
 ***************************************************************************
 * MediaTeK Inc.
 * 4F, No. 2 Technology	5th	Rd.
 * Science-based Industrial	Park
 * Hsin-chu, Taiwan, R.O.C.
 *
 * (c) Copyright 2002-2012, MTK.
 *
 * All rights reserved.	MediaTeK's source	code is	an unpublished work	and	the
 * use of a	copyright notice does not imply	otherwise. This	source code
 * contains	confidential trade secret material of MediaTeK Tech. Any attemp
 * or participation	in deciphering,	decoding, reverse engineering or in	any
 * way altering	the	source code	is stricitly prohibited, unless	the	prior
 * written consent of MediaTeK, Inc. is obtained.
 ***************************************************************************

	Module Name:
	omci_me_traffic_management.h

	Abstract:

	Revision History:
	Who			When			What
	--------	----------		----------------------------------------------
	Name		Date			Modification logs
	lisa.xue	2012/7/28	Create
*/

#ifndef _TRAFFIC_MANAGEMENT_ME_H_
#define _TRAFFIC_MANAGEMENT_ME_H_

#include <stdint.h>
#include "omci_adpt_common.h"

int omci_me_gem_iwtp_create_op(management_entry_ptr me_entry, omci_me_info_ptr me_info);
int omci_me_gem_iwtp_delete_op(management_entry_ptr me_entry, omci_me_info_ptr me_info);

int get_fec_pm_history_data(pm_history_data_list_ptr pm_list, uint8_t syncFlag);
int get_gal_eth_pm_history_data(pm_history_data_list_ptr pm_list, uint8_t syncFlag);
int get_enhanced_fec_pm_history_data(pm_history_data_list_ptr pm_list, uint8_t syncFlag);
int get_enhanced_tc_pm_history_data(pm_history_data_list_ptr pm_list, uint8_t syncFlag);
int get_xgpon_tc_pm_history_data(pm_history_data_list_ptr pm_list, uint8_t syncFlag);
int get_xgpon_ds_mgnt_pm_history_data(pm_history_data_list_ptr pm_list, uint8_t syncFlag);
int get_xgpon_us_mgnt_pm_history_data(pm_history_data_list_ptr pm_list, uint8_t syncFlag);

int omci_me_fec_pm_history_notify(pm_history_data_list_ptr pm_list, omci_me_info_t threshold_info);
int omci_me_gal_eth_pm_history_notify(pm_history_data_list_ptr pm_list, omci_me_info_t threshold_info);
int omci_me_enhanced_fec_pm_history_notify(pm_history_data_list_ptr pm_list, omci_me_info_t threshold_info);
int omci_me_enhanced_tc_pm_history_notify(pm_history_data_list_ptr pm_list, omci_me_info_t threshold_info);
int omci_me_xgpon_tc_pm_history_notify(pm_history_data_list_ptr pm_list, omci_me_info_t threshold_info);
int omci_me_xgpon_ds_mgnt_pm_history_notify(pm_history_data_list_ptr pm_list, omci_me_info_t threshold_info);
int omci_me_xgpon_us_mgnt_pm_history_notify(pm_history_data_list_ptr pm_list, omci_me_info_t threshold_info);




extern omci_attr_dscp_t omci_attr_gem_interwork_tp_op[];
extern omci_me_func_t omci_me_gem_interwork_tp_op;
extern omci_attr_t omci_gem_interwork_tp_attr;

extern omci_attr_dscp_t omci_attr_mc_gem_interwork_tp_op[];
extern omci_me_func_t omci_me_mc_gem_interwork_tp_op;
extern omci_attr_t omci_mc_gem_interwork_tp_attr;

extern omci_attr_dscp_t omci_attr_gal_eth_prof_op[];
extern omci_me_func_t omci_me_gal_eth_prof_op;
extern omci_attr_t omci_gal_eth_prof_attr;

extern omci_attr_dscp_t omci_attr_gal_eth_pm_hist_op[];
extern omci_me_func_t omci_me_gal_eth_pm_hist_op;
extern omci_attr_t omci_gal_eth_pm_hist_attr;

extern omci_attr_dscp_t omci_attr_fec_pm_hist_op[];
extern omci_me_func_t omci_me_fec_pm_hist_op;
extern omci_attr_t omci_fec_pm_hist_attr;

extern omci_attr_dscp_t omci_attr_enhanced_fec_pm_hist_op[];
extern omci_me_func_t omci_me_enhanced_fec_pm_hist_op;
extern omci_attr_t omci_enhanced_fec_pm_hist_attr;

extern omci_attr_dscp_t omci_attr_xgon_tc_pm_hist_op[];
extern omci_me_func_t omci_me_xgon_tc_pm_hist_op;
extern omci_attr_t omci_xgon_tc_pm_hist_attr;

extern omci_attr_dscp_t omci_attr_xgon_ds_mgnt_pm_hist_op[];
extern omci_me_func_t omci_me_xgon_ds_mgnt_pm_hist_op;
extern omci_attr_t omci_xgon_ds_mgnt_pm_hist_attr;

extern omci_attr_dscp_t omci_attr_xgon_us_mgnt_pm_hist_op[];
extern omci_me_func_t omci_me_xgon_us_mgnt_pm_hist_op;
extern omci_attr_t omci_xgon_us_mgnt_pm_hist_attr;

extern omci_attr_dscp_t omci_attr_enhanced_tc_pm_hist_op[];
extern omci_me_func_t omci_me_enhanced_tc_pm_hist_op;
extern omci_attr_t omci_enhanced_tc_pm_hist_attr;

#endif

